// using UnityEngine.Rendering;
// using UnityEngine.Rendering.RendererUtils;
// using UnityEngine.Rendering.RenderGraphModule;
//
// namespace LiteRP
// {
//     public partial class LiteRenderGraphRecorder
//     {
//         private static readonly ProfilingSampler s_DrawObjectsPassProfilingSampler = new ProfilingSampler("Draw Objects");
//
//         internal class DrawOjbectsPassData
//         {
//             internal RendererListHandle opaquRendererListHandle;
//             internal RendererListHandle transparentRendererListHandle;
//         }
//
//         private void AddDrawObjectsPass(RenderGraph renderGraph, CameraData cameraData)
//         {
//             using ( var builder = renderGraph.AddRasterRenderPass<DrawOjbectsPassData>("Draw Objects Pass", out var passData, s_DrawObjectsPassProfilingSampler))
//             {
//                 // 生命创建或引用资源
//                 
//                 // 创建不透明渲染队列
//                 RendererListDesc rendererListDesc = new RendererListDesc(s_ShaderTagId,  cameraData.cullingResults, cameraData.camera);
//                 rendererListDesc.sortingCriteria = SortingCriteria.CommonOpaque;
//                 rendererListDesc.renderQueueRange = RenderQueueRange.opaque;
//                 passData.opaquRendererListHandle = renderGraph.CreateRendererList(rendererListDesc);
//                 // 引用不透明渲染队列
//                 builder.UseRendererList(passData.opaquRendererListHandle);
//                 
//                 
//                 // 创建不透明渲染队列
//                 rendererListDesc = new RendererListDesc(s_ShaderTagId,  cameraData.cullingResults, cameraData.camera);
//                 rendererListDesc.sortingCriteria = SortingCriteria.CommonTransparent;
//                 rendererListDesc.renderQueueRange = RenderQueueRange.transparent;
//                 passData.transparentRendererListHandle = renderGraph.CreateRendererList(rendererListDesc);
//                 // 引用不透明渲染队列
//                 builder.UseRendererList(passData.transparentRendererListHandle);
//                 
//                 // 设置渲染Backbuffer
//                 if (m_BackbuffColorTextureHandle.IsValid())
//                 {
//                     builder.SetRenderAttachment(m_BackbuffColorTextureHandle, 0, AccessFlags.Write);
//                 }
//                 
//                 // 设置渲染全局状态
//                 builder.AllowPassCulling(false);
//                 
//                 
//                 builder.SetRenderFunc((DrawOjbectsPassData data, RasterGraphContext context) =>
//                 {
//                     // 调用渲染指令
//                     context.cmd.DrawRendererList(data.opaquRendererListHandle);
//                     context.cmd.DrawRendererList(data.transparentRendererListHandle);
//                 });
//             }
//
//            
//         }
//     }
// }